package java8.deom3;

import java.util.function.BinaryOperator;
import java.util.function.Predicate;

public class Test1 {
	
	//java中重要接口
	
	//1.Predicate<T> T boolean
	//2.Consumer< T> T void
	//3.Function< T, R> T R
	//4.Supplier< T> None T
	//5.UnaryOperator< T> T T
	//6.BinaryOperator< T> (T, T) T
	

	
	
	public static void main(String[] args) {
		
//		//1.  T->Predicate ->boolean
//		Predicate<Integer> atLeast5= x -> x>5;
//		Predicate<Integer> atLeast5_1= (Integer x) -> x>5;
//
//		//2.
//		BinaryOperator< Long> addLongs = (x, y) -> x + y;
//		//编译不通过.上面 的 例子 中 并没有 给出 变量 add 的 任何 泛 型 信息， 给出 的 正是 原始 类型 的 定义。
//		//因此， 编译器 认为 参数 和 返回 值 都是 java. lang. Object 实例。  
//		//BinaryOperator<> addLongs_1 = (x, y) -> x + y;
//		
	}
	
	
	
	
	
	
	
	
	
}
